home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
C/C++ Users Group Library 1996 July
/
C-C++ Users Group Library July 1996.iso
/
vol_300
/
359_01
/
readme
< prev
next >
Wrap
Text File
|
1991-10-21
|
26KB
|
621 lines
This is the README file for DJ's GCC port to DOS ("djgpp")
Contents:
* Overview
* What's available
* How to install
* Common questions
* Deviations and Caveats
* Copyright information
Disclaimer: This software is distributed WITHOUT ANY WARRANTY; without
even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
PURPOSE.
DJ Delorie
USmail: 24 Kirsten Ave, Rochester, NH 03867-2954, USA
email: dj@ctron.com
Overview:
This package contains a 32-bit 80386 DOS extender with symbolic
debugger, a C/C++ compiler with utilities, development libraries, and
source code. It generates full 32-bit programs and supports full
virtual memory with paging to disk.
Requirements:
A 80386-based IBM compatible PC or PS/2, approximately 4-5Mb of hard
drive space, and 512K RAM.
Supported Wares:
* Up to 128M of extended memory (expanded under VCPI)
* Up to 128M of disk space used for swapping
* SuperVGA 256-color mode up to 1024x768
* 80387
* XMS & VDISK memory allocation strategies
* VCPI programs, such as QEMM and 386MAX
Unsupported:
* DPMI programs, such as Windows 3.0
* Multiprocessing (fork())
File location:
host: grape.ecs.clarkson.edu
login: ftp
password: send your e-mail address
directory: ~ftp/pub/msdos/djgpp
Many thanks to the sysops at Clarkson for providing a home to djgpp!
As a convenience to non-FTP users, djgpp is also stored on Clarkson's
archive server, sun.soe.clarkson.edu. To access the archive server,
do this:
% mail archive-server@sun.soe.clarkson.edu
Subject: <none>
help
index msdos/djgpp
^D
NOTE: In accordance with FSF CopyLeft, you are not allowed to upload
this program to a distribution site unless that site also makes the FSF
sources for these programs available. Please read the file COPYING for
more details. FSF sources are available on prep.ai.mit.edu, and on
either grape.ecs.clarkson.edu or sun.soe.clarkson.edu
NOTE: If your application links in object modules that were written
by FSF, your application counts as a "derived work" and must obey
the provisions of the FSF Copyrights. See the file COPYING for
details. Specifically, the C++ classes in libc.a and obstacks are
FSF works that are covered by the GNU GPL. The mere act of compiling
does not affect the copyright status of your program.
File formats:
.ZIP format - djgpp.zip - one 2.2M file, contains everything.
split .ZIP - djgppzip.000 through djgppzip.005 (or so), each
320K-ish. Use the merge program to merge them into
djgpp.zip ("merge djgppzip djgpp.zip").
other - readme, merge.c/.exe, split.c/.exe are separately available
Directories:
bin all binaries (cpp, cc1, extender, etc)
lib all libraries (crt0.*, libc.a, libgr.a, libpc.a)
include all include files
docs all documents (including this one)
go32 sources for the extender
drivers various SuperVGA drivers
libsrc sources for the libraries
diffs diffs from FSF distributions to dos-compilable
utils sources for the utilities
samples sample C++ sources using graphics & mouse
emu387 80387 emulator for non-80387 systems
bin:
bison.exe lalr(1) parser
flex.exe lexical parser
cpp.exe C and C++ preprocessor
cc1.exe C compiler
cc1plus.exe C++ compiler
as.exe 80386/80387 assembler
ld.exe a.out (BSD) format linker
ar.exe archive utility
nm.exe name list utility
size.exe a.out section size utility
strip.exe symbol stripper
objdump.exe display info from .o file
gcc.exe compilation coordinator
go32.exe basic 32-bit DOS extender
debug32.exe 32-bit DOS extender with symbolic debugger
stub.exe stub to prepend on aout files to make .exe files
aout2exe.bat turns aout file to .exe by prepending stub.exe
diff.exe creates diffs, including context diffs
patch.exe patches source from diffs, including context diffs
djtarx.exe tar extractor for FSF tarfiles if you don't have a tar
utod.exe convert Unix text files to DOS text files
dtou.exe convert DOS text files to Unix text files
split.exe split big binaries into many little binaries
merge.exe merge many little binaries back into one big binary
gprof.exe profile report generator
lib:
libc.a all standard routines (BSD style), and C++ methods & support
libm.a math routines
libgr.a graphics routines and mouse support
libpc.a routines for PC support (in/out, getkey, kbhit, screen utils)
*_p.a profiled libraries
crt0.s C runtime source
crt0.o C runtime object
bison.simple bison support
bison.hairy bison support
flex.skel flex support file
libflex.a flex support library
include:
Most BSD-style and SYSV-style include files. These mostly came from
the G++ sources.
sys/*.h MS-DOS specific
graphics.h for libgr.a
pc.h for libpc.a
mouse.h for mouse routines in libgr.a
docs:
readme this document
copying GNU General Public License
copying.dj Copyright information for items (C) DJ Delorie
debug32.doc instructions for the symbolic debugger
internal.doc information about how the extender works
libc.doc differences and enhancements
libm.doc list of implemented functions
libpc.doc documentation
libgr.doc documentation
go32:
sources for the extender. Requires Turbo C and Turbo Assembler
drivers:
VGA and SuperVGA drivers - source and binary. Use the GO32 environment
variable to select and configure one of these according to the VGA card
you have.
libsrc:
Sources for the libraries. These are compiled with gcc. The makefile
is set up for NDMAKE. The source files came from three sources:
(1) Me. Mostly the system call routines, and some string routines.
All of libpc.a, libgr.a, libm.a .
(2) FSF. These are the GCC support routines, C++ support, and
other routines that came with gcc (malloc, obstack, alloca, etc)
(3) BSD. These are mostly the stdio and stdlib routines, and
the rest of the string routines. BSD requires that I mention
that their sources are copyright BSD and that I have modified
some to comply with the include files provided by FSF. These
sources are the "freed files" everyone keeps talking about.
diffs:
Context diffs from the original FSF sources to the GNUDOS sources. See
the README and VERSIONS files in that directory for more info.
utils:
Sources for djtarx, utod, dtou, split, and merge.
samples:
Various samples showing how to use the mouse, graphics, C++, setjmp(),
etc.
emu387:
80387 emulator and source code. I don't expect this to work perfectly,
but should cover most normal floating point math. To use, add
"emu /djgpp/emu387/emu387" to the GO32 environment variable. (ie:
set GO32=emu /djgpp/emu387/emu387)
INSTALLING:
To install, you must do the following:
* Create a directory to install in, like c:\djgpp.
* Create a "temp" directory, like c:\tmp.
* Un-zip djgpp.zip in that directory.
C:\DJGPP> pkunzip -d djgpp.zip
* Add the following lines to C:\AUTOEXEC.BAT:
set GCCBIN=c:\djgpp\bin
^ Use DOS slashes here so that AOUT2EXE.BAT will work
set GCCINC=c:/djgpp/include
set GCCLIB=c:/djgpp/lib
set GCCTMP=c:/tmp
set GO32TMP=c